#!/bin/bash

# Next.js Demo 项目设置脚本
echo "🚀 开始设置 Next.js Demo 项目..."

# 检查 Node.js 版本
echo "📋 检查 Node.js 版本..."
NODE_VERSION=$(node -v)
echo "当前 Node.js 版本: $NODE_VERSION"

# 检查包管理器
if command -v pnpm &> /dev/null; then
    PACKAGE_MANAGER="pnpm"
elif command -v yarn &> /dev/null; then
    PACKAGE_MANAGER="yarn"
else
    PACKAGE_MANAGER="npm"
fi

echo "📦 使用包管理器: $PACKAGE_MANAGER"

# 安装依赖
echo "📥 安装项目依赖..."
$PACKAGE_MANAGER install

# 创建环境变量文件
echo "🔧 创建环境变量文件..."
if [ ! -f .env.local ]; then
    cat > .env.local << EOF
# 应用配置
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your-secret-key-change-this-in-production

# 数据库 (可选)
# DATABASE_URL=your-database-url

# 第三方服务 (可选)
# GOOGLE_CLIENT_ID=your-google-client-id
# GOOGLE_CLIENT_SECRET=your-google-client-secret

# API 配置
API_BASE_URL=http://localhost:3000/api
EOF
    echo "✅ 已创建 .env.local 文件"
else
    echo "ℹ️  .env.local 文件已存在"
fi

# 设置 Git hooks
echo "🔗 设置 Git hooks..."
if [ -d .git ]; then
    npx husky install
    echo "✅ Git hooks 已设置"
else
    echo "ℹ️  未检测到 Git 仓库，跳过 Git hooks 设置"
fi

# 运行类型检查
echo "🔍 运行类型检查..."
$PACKAGE_MANAGER run type-check

# 运行代码格式化
echo "🎨 格式化代码..."
$PACKAGE_MANAGER run format

echo ""
echo "🎉 项目设置完成！"
echo ""
echo "📝 下一步："
echo "1. 编辑 .env.local 文件配置环境变量"
echo "2. 运行 'npm run dev' 启动开发服务器"
echo "3. 在浏览器中打开 http://localhost:3000"
echo ""
echo "📚 更多信息请查看 README.md 文件" 